layui.define(['admin'], function (exports) {
  var admin = layui.admin;

  //设置请求
  async function reqAwait(url, data = {}, type = "GET") {
    return new Promise((resolve, reject) => {


      let config = {
        url: url,
        type: type,
        success: function (data) {
          resolve(data);
        },
        error: function (e) {
          reject(e); // 注意这里应该是 reject(e)，而不是 reject(err)  
        }
      }
      if (type === "GET") {
        config.data = data;
      } else {
        // 对于非GET请求，设置请求头和数据体
        // 如果是文件上传，需要使用FormData
        if (data instanceof FormData) {
          config.processData = false; // 防止jQuery对数据进行处理
          config.contentType = false; // 防止jQuery设置Content-Type
          config.data = data;
        } else {
          config.data = JSON.stringify(data);
          config.contentType = 'application/json';
        }
      }


      admin.req(config);


    });
  }

  // 导出模块（如果需要的话）  
  exports('http', {
    reqAwait: reqAwait // 导出渲染图表的方法，以便在其他地方使用  
  });
});